#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
//#include<ctype.h>
//int main()
//{
//	char a = 0;
//	int count = 0;
//	while ((a = getchar()) != EOF)
//	{
//		if (isalpha(a))
//			count++;
//		if (a >= '0' && a <= '9')
//			count++;
//	}
//	printf("%d\n", count);
//	return 0;
//}
//#include<string.h>
//int main()
//{
//	char arr[] = "admin";
//	char name[10] = { 0 };
//	char password[10] = { 0 };
//	scanf("%s %s", name, password);
//	if ((strcmp(arr, name) == 0) && (strcmp(arr, password) == 0))
//		printf("Login Success!\n");
//	else
//		printf("Login Fail!\n");
//	return 0;
//}
//#include<string.h>
//int is_prime(int n)
//{
//	if (n == 2 || n == 3)
//		return 1;
//	else
//	{
//		int i = 0;
//		int flag = 0;
//		for (i = 2; i * i <= n; i++)
//		{
//			if (n % i == 0)
//			{
//				flag = 0;
//				break;
//
//			}
//			else
//			{
//				flag = 1;
//			}
//		}
//		if (flag)
//			return 1;
//		return 0;
//	}
//}
//int main()
//{
//	char arr[101] = { 0 };
//	scanf("%s", arr);
//	int len = strlen(arr);
//	int i = 0;
//	int j = 0;
//	int maxn = 0;
//	int minn = len;
//	char alpha[27] = "abcdefghijklmnopqrstuvwxyz";
//	int num[26] = { 0 };
//	for (i = 0; i < len; i++)
//	{
//		for (j = 0; j < 26; j++)
//		{
//			if (arr[i] == alpha[j])
//				num[j]++;
//		}
//	}
//	for (i = 0; i < 26; i++)
//	{
//		if (num[i] != 0 && num[i] > maxn)
//		{
//			maxn = num[i];
//		}
//		if (num[i] != 0 && num[i] < minn)
//			minn = num[i];
//	}
//	if (is_prime(maxn - minn))
//	{
//		printf("Lucky Word\n%d", maxn - minn);
//	}
//	else
//	{
//		printf("No Answer\n0");
//	}
//}
//#include<string.h>
//int main()
//{
//	char a = 0;
//	int count_A = 0;
//	int count_B = 0;
//	while (scanf("%c", &a) != EOF)
//	{
//		switch (a)
//		{
//		case 'A':
//			count_A++;
//			break;
//		case 'B':
//			count_B++;
//			break;
//		default:
//			break;
//		}
//	}
//	if (count_A > count_B)
//	{
//		printf("A\n");
//	}
//	else if (count_A == count_B)
//	{
//		printf("E\n");
//	}
//	else
//	{
//		printf("B\n");
//	}
//	return 0;
//}
//int main()
//{
//	int len = 0;
//	int n = 0;
//	char s[100] = { 0 };
//	scanf("%d %d", &len,& n);
//	scanf("%s", s);
//	int i = 0;
//	int j = 0;
//	int l = 0;
//	int r = 0;
//	char a1 = 0;
//	char a2 = 0;
//	
//	for (i = 0; i < n; i++)
//	{
//		scanf("%d %d %c %c",&l,&r,&a1,&a2);
//		for (j = l - 1; j < r; j++)
//		{
//			if (s[j] == a1)
//				s[j] = a2;
//		}
//	}
//	printf("%s\n", s);
//
//	return 0;
//}
//#include<ctype.h>
//int main()
//{
//	char word[100] = { 0 };
//	char ret[100] = { 0 };
//	int p = 0;
//	while (scanf("%s", word) != EOF)
//	{
//		if (islower(word[0]))
//		{
//			ret[p++] = word[0] - 32;
//		}
//		else
//		{
//			ret[p++] = word[0];
//		}
//	}
//	printf("%s", ret);
//	return 0;
//}
void douhao(int n);
int main()
{
    int n;
    scanf("%d", &n);
    douhao(n);
    return 0;
}
void douhao(int n)
{
    if (n < 1000)
        printf("%d", n);
    else
    {
        douhao(n / 1000);
        printf(",%03d", n % 1000);
    }
}
